.thaw-radio-group {
    display: flex;
    align-items: flex-start;
}

.thaw-radio {
    display: inline-flex;
    position: relative;
}

.thaw-radio__input {
    position: absolute;
    left: 0px;
    top: 0px;
    width: calc(16px + 2 * var(--spacingHorizontalS));
    height: 100%;
    box-sizing: border-box;
    margin: 0px;
    opacity: 0;
}

.thaw-radio__input:enabled {
    cursor: pointer;
}

.thaw-radio__indicator {
    position: relative;
    width: 16px;
    height: 16px;
    font-size: 12px;
    box-sizing: border-box;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: var(--strokeWidthThin) solid;
    border-radius: var(--borderRadiusCircular);
    margin: var(--spacingVerticalS) var(--spacingHorizontalS);
    fill: currentcolor;
    pointer-events: none;
}

.thaw-radio__input:enabled:not(:checked) ~ .thaw-radio__indicator {
    border-color: var(--colorNeutralStrokeAccessible);
}

.thaw-radio__input:checked ~ .thaw-radio__indicator {
    border-color: var(--colorCompoundBrandStroke);
    color: var(--colorCompoundBrandForeground1);
}

.thaw-radio__input:hover:checked:not(:disabled) ~ .thaw-radio__indicator {
    color: var(--colorCompoundBrandForeground1Hover);
}

.thaw-radio__input:hover:active:not(:disabled) ~ .thaw-radio__indicator {
    color: var(--colorCompoundBrandForeground1Pressed);
}

.thaw-radio__indicator::after {
    position: absolute;
    width: 16px;
    height: 16px;
    border-radius: var(--borderRadiusCircular);
    transform: scale(0.625);
    background-color: currentcolor;
}

.thaw-radio__input:checked ~ .thaw-radio__indicator::after {
    content: "";
}

.thaw-radio__input:disabled ~ .thaw-radio__indicator {
    border-color: var(--colorNeutralStrokeDisabled);
    color: var(--colorNeutralForegroundDisabled);
}

.thaw-radio__label {
    margin-bottom: calc((16px - var(--lineHeightBase300)) / 2);
    margin-top: calc((16px - var(--lineHeightBase300)) / 2);
    align-self: center;
    padding-bottom: var(--spacingVerticalS);
    padding-top: var(--spacingVerticalS);
    padding-left: var(--spacingHorizontalXS);
    padding-right: var(--spacingHorizontalS);
    line-height: var(--lineHeightBase300);
    font-size: var(--fontSizeBase300);
    font-family: var(--fontFamilyBase);
    color: var(--colorNeutralForeground3);
}

.thaw-radio__input:enabled:hover ~ .thaw-radio__label {
    color: var(--colorNeutralForeground2);
}

.thaw-radio__input:enabled:active ~ .thaw-radio__label {
    color: var(--colorNeutralForeground1);
}

.thaw-radio__input:enabled:checked ~ .thaw-radio__label {
    color: var(--colorNeutralForeground1);
}

.thaw-radio__input:enabled ~ .thaw-radio__label {
    cursor: pointer;
}

.thaw-radio__input:disabled ~ .thaw-radio__label {
    color: var(--colorNeutralForegroundDisabled);
    cursor: default;
}
